package cz.vse.adventura.po1715.cerj117_cermak.hra;



/*******************************************************************************
 * Instance třídy {@code PříkazUmyj} představuje půjčení klíče od toalet.
 *
 * @author    Jiří Čermák
 * @version   1.00.000
 */
public class PříkazPůjčit extends Příkaz
{
//== KONSTANTNÍ ATRIBUTY TŘÍDY =================================================
//== PROMĚNNÉ ATRIBUTY TŘÍDY ===================================================
//== KONSTANTNÍ ATRIBUTY INSTANCÍ ==============================================
//== PROMĚNNÉ ATRIBUTY INSTANCÍ ================================================
//== PŘÍSTUPOVÉ METODY VLASTNOSTÍ TŘÍDY ========================================
//== OSTATNÍ NESOUKROMÉ METODY TŘÍDY ===========================================

//##############################################################################
//== KONSTRUKTORY A TOVÁRNÍ METODY =============================================

    /***************************************************************************
     * Vytvoří instanci mající na strosti reakci na příkaz <b>jdi</b>,
     * po jehož zadaní se hráč přesune do místnosti,
     * jejíž název bude uveden za příkazem.
     */
    public PříkazPůjčit()
    {
        super( "Půjčit",
               "Půjčí si klíč od toalety." );
    }


//== ABSTRAKTNÍ METODY =========================================================
//== PŘÍSTUPOVÉ METODY VLASTNOSTÍ INSTANCÍ =====================================
//== OSTATNÍ NESOUKROMÉ METODY INSTANCÍ ========================================

    /***************************************************************************
     * Otevře zadaný předmět; před tím však zkontroluje,
     * zda je zadán otevíraný předmět, zda tímto předmětem je lednička v kuchyni
     * a zda je lednička již podloženqa, aby šla otevřít.
     *
     * @param parametry Jediným povoleným parametrem je zatím lednička
     * @return Text zpravy vypsane po porovedeni prikazu
     */
    @Override
    public String execute( String... parametry )
    {
        if (parametry.length == 0)  {
            return "Je třeba říct, který předmět si chcete půjčit.";//==========>
        }
        if (!parametry[0].equalsIgnoreCase("klíč") )
            return "Není možné si půjčit " + parametry[0];      //==========>
           

        if (Místnosti.getAktuálníMístnost() != Místnosti.hospoda )
        {
            return "Klíč je možné si půjčit jen v hospodě."; //==========>
        }
        if (!Stav.OBJEDNANO)
        {
            return "Nemůžete si jen tak půjčit klíč od toalet. Můsíte si nejdříve něco objednat."; //==========>
        }
        
        Stav.KLIČ_PŮJČEN = true;
        return "Půjčil jste si klíč od toalet.";

    }



//== SOUKROMÉ A POMOCNÉ METODY TŘÍDY ===========================================
//== SOUKROMÉ A POMOCNÉ METODY INSTANCÍ ========================================
//== VNOŘENÉ A VNITŘNÍ TŘÍDY ===================================================
//== TESTY A METODA MAIN =======================================================
//
//    /***************************************************************************
//     * Testovací metoda.
//     */
//    public static void test()
//    {
//        PrikazJdi x = new PrikazJdi();
//    }
//    /** @param args Parametry příkazového řádku - nepoužívané. */
//    public static void main( String[] args )  {  test();  }
}
